A data processing apparatus which performs data processing operations in response to instructions may be provided with more than one set of processing circuitry which can execute those instructions. The apparatus can then have a configuration which allows it to switch between usage of those respective sets of processing circuitry, where the processing circuitry to use in any given period may be selected according to various criteria, depending on the particular system performance requirements.
The more than one set of processing circuitry may be rather independent of one another and this can mean that some instructions such as load and store instructions may have to be carefully handled to ensure that the independence of the sets of processing circuitry does not result in data hazard conditions arising.